Improving Class Cohesion Measurement: Towards a Novel Approach Using Hierarchical Clustering
نویسندگان
چکیده
Class cohesion is considered as one of the most important object-oriented software attributes. High cohesion is, in fact, a desirable property of software. Many different metrics have been suggested in the last several years to measure the cohesion of classes in object-oriented systems. The class of structural object-oriented cohesion metrics is the most investigated category of cohesion metrics. These metrics measure cohesion on structural information extracted from the source code. Empirical studies noted that these metrics fail in many situations to properly reflect cohesion of classes. This paper aims at exploring the use of hierarchical clustering techniques to improve the measurement of cohesion of classes in object-oriented systems. The proposed approach has been evaluated using three particular case studies. We also used in our study three well-known structural cohesion metrics. The achieved results show that the new approach appears to better reflect the cohesion (and structure) of classes than traditional structural cohesion metrics.
منابع مشابه
Computing Cohesive Force among Dataset Entities Using Differential Evolution and Hierarchical Clustering
The current paper introduces a novel concept and metric, called cohesion factor (CF); which is defined pair-wise among entities in a dataset and indicates their degree of stickiness (cohesive force). First, a dataset with n entities is assumed as a whole unit or cluster, then they are clustered to 2, 3, . . . , and finally n classes, the more two entities are appeared in the same class during t...
متن کاملImproving the quality of software cohesion metrics through dynamic analysis
Class cohesion is an important object oriented software quality attribute. Assessing the class cohesion and improving the class quality accordingly during the object oriented design phase allows for cheaper management of the later phases. Most of the cohesion metrics planned in the journalism describes static cohesion measurement at design level. Static metrics is a measure that is applied at t...
متن کاملARIES: An Eclipse plug-in to Support Extract Class Refactoring
During Object-Oriented development, developers try to define classes having (i) strongly related responsibilities, i.e., high cohesion, and (ii) limited number of dependencies with other classes, i.e., low coupling [1]. Unfortunately, due to strict deadlines, programmers do not always have sufficient time to make sure that the resulting source code conforms to such a development laws [8]. In pa...
متن کاملEnhanced flow visualisation of complex aerodynamic phenomena using automatic stream surface seeding with application to the BLOODHOUND SSC Land Speed Record vehicle
This application paper describes a novel, cluster-based, semi-automatic, stream surface placement strategy for structured and unstructured computational fluid dynamics (CFD) data, tailored towards a specific application: The BLOODHOUND jet and rocket propelled land speed record vehicle. An existing automatic stream surface placement algorithm(8), is extensively modified to cater for large unstr...
متن کاملHIERARCHICAL DATA CLUSTERING MODEL FOR ANALYZING PASSENGERS’ TRIP IN HIGHWAYS
One of the most important issues in urban planning is developing sustainable public transportation. The basic condition for this purpose is analyzing current condition especially based on data. Data mining is a set of new techniques that are beyond statistical data analyzing. Clustering techniques is a subset of it that one of it’s techniques used for analyzing passengers’ trip. The result of...
متن کامل